/* Wizard with steps */
.fluent-wizard > ol > li {
    position: relative;
    display: flex;
}

/* Wizard with steps on Left */
.fluent-wizard[position="left"] > ol > li {
    gap: 10px;
}

    .fluent-wizard[position="left"] > ol > li:before {
        flex: 0 0 var(--fluent-wizard-circle-size);
        height: var(--fluent-wizard-circle-size);
    }

    .fluent-wizard[position="left"] > ol > li:last-child {
        height: auto;
    }

    .fluent-wizard[position="left"] > ol > li:not(:last-child):after {
        content: "";
        position: absolute;
        left: 0;
        top: calc(var(--fluent-wizard-circle-size) + var(--fluent-wizard-spacing));
        bottom: var(--fluent-wizard-spacing);
        order: -1;
        transform: translateX(calc(var(--fluent-wizard-circle-size) / 2));
        width: 2px;
        background-color: var(--neutral-stroke-hover);
    }

[dir="rtl"] .fluent-wizard[position="left"] > ol > li:not(:last-child):after {
    left: revert;
    transform: translateX(calc(var(--fluent-wizard-circle-size) / -2));
}

/* Wizard with steps on Top */
.fluent-wizard[position="top"] > ol > li {
    flex-direction: column;
    flex: 1;
    text-align: center;
}

    .fluent-wizard[position="top"] > ol > li:before {
        width: var(--fluent-wizard-circle-size);
        height: var(--fluent-wizard-circle-size);
        margin-left: calc((100% - var(--fluent-wizard-circle-size)) / 2);
    }

    .fluent-wizard[position="top"] > ol > li:not(:last-child):after {
        content: "";
        position: absolute;
        left: calc(50% + calc(var(--fluent-wizard-circle-size) / 2 + var(--fluent-wizard-spacing)));
        right: unset;
        top: calc(var(--fluent-wizard-circle-size) / 2);
        width: calc(100% - var(--fluent-wizard-circle-size) - calc(var(--fluent-wizard-spacing) * 2));
        height: 2px;
        order: -1;
        background-color: var(--neutral-stroke-hover);
    }


[dir="rtl"] .fluent-wizard[position="top"] > ol > li:not(:last-child):after {
    left: unset;
    right: calc(50% + calc(var(--fluent-wizard-circle-size) / 2 + var(--fluent-wizard-spacing)));
}

/* Icon */
.fluent-wizard > ol > li .fluent-wizard-icon {
    min-width: calc(1.2 * var(--fluent-wizard-circle-size));
    min-height: calc(1.2 * var(--fluent-wizard-circle-size));
}

/* Icon Number */
.fluent-wizard > ol > li .fluent-wizard-icon-number {
    margin-top: calc(var(--fluent-wizard-circle-size) * -1 - 4px);
    font-size: small;
    color: var(--accent-fill-rest);
    text-align: center;
    align-content: center;
}

.fluent-wizard[position="top"] > ol > li .fluent-wizard-icon-number {
    height: var(--fluent-wizard-circle-size);
}

.fluent-wizard[position="left"] > ol > li .fluent-wizard-icon-number {
    width: var(--fluent-wizard-circle-size);
    height: var(--fluent-wizard-circle-size);
}

.fluent-wizard > ol > li .fluent-wizard-icon-number[disabled] {
    opacity: var(--disabled-opacity);
}

.fluent-wizard > ol > li .fluent-wizard-icon-number[status='previous']:not([disabled]) {
    color: var(--foreground-on-accent-rest);
}

.fluent-wizard > ol > li .fluent-wizard-icon-number[status='current']:not([disabled]) {
    color: var(--foreground-on-accent-rest);
}

.fluent-wizard > ol > li .fluent-wizard-icon-number[status='next']:not([disabled]) {
    color: var(--accent-fill-rest);
}

/* Title */
.fluent-wizard > ol > li .fluent-wizard-title {
    margin-block-start: 2px;
    margin-block-end: 0px;
    white-space: nowrap;
}

.fluent-wizard > ol > li[status='next'] ::deep .fluent-wizard-title {
    color: var(--neutral-stroke-strong-rest);
}

.fluent-wizard > ol > li[status='current'] ::deep .fluent-wizard-title {
    font-weight: bold;
}

/* Summary */
.fluent-wizard > ol > li ::deep .fluent-wizard-summary {
    margin-block-start: 4px;
    margin-block-end: 0px;
    font-size: smaller;
}

.fluent-wizard > ol > li[status='current'] ::deep .fluent-wizard-summary {
    color: var(--accent-fill-rest);
}

.fluent-wizard > ol > li[status='next'] ::deep .fluent-wizard-summary {
    color: var(--neutral-stroke-strong-rest);
}

/* Body */
.fluent-wizard-body {
    margin: 10px;
}

/* Hidden */
@media (max-width: 599.98px) {
    .fluent-wizard > ol > li ::deep > div[hidden-when~="xs"] {
        display: none;
    }
}

@media (min-width: 600px) and (max-width: 959.98px) {
    .fluent-wizard > ol > li ::deep > div[hidden-when~="sm"] {
        display: none;
    }
}

@media (min-width: 960px) and (max-width: 1279.98px) {
    .fluent-wizard > ol > li ::deep > div[hidden-when~="md"] {
        display: none;
    }
}

@media (min-width: 1280px) and (max-width: 1919.98px) {
    .fluent-wizard > ol > li ::deep > div[hidden-when~="lg"] {
        display: none;
    }
}

@media (min-width: 1920px) and (max-width: 2559.98px) {
    .fluent-wizard > ol > li ::deep > div[hidden-when~="xl"] {
        display: none;
    }
}

@media (min-width: 2560px) {
    .fluent-wizard > ol > li ::deep > div[hidden-when~="xxl"] {
        display: none;
    }
}
